package com.jgjc.service;

import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface FrameMemberService {

    //获取桥梁构件列表
    List<Map<String, Object>> getList(int bridgeId, int sideTypeId);

    //添加跨径组合信息
    int addSite(List<Map<String, Object>> mapList, String bridgeSpanCombination, int id, int bridgeId, int sideTypeId);

    //根据跨空id获取对应构件信息
    List<Map<String, Object>> getListBySiteId(int siteId);

    //添加上部结构信息
    int addSuperstructure(List siteNoList, Map<String, Object> requestMap);

    //添加桥墩信息
    int addPier(List siteNoList, Map<String, Object> requestMap);

    //添加河床信息
    int addSiteRange(List siteNoList, Map<String, Object> requestMap);

    //获取上部结构类型
    List<Map<String, Object>> getSuperstructureTypeList();

    //获取材料类型
    List<Map<String, Object>> getMaterialTypeList();

    //获取支座类型
    List<Map<String, Object>> getSupportTypeList();

    //获取桥墩类型
    List<Map<String, Object>> getPierTypeList();

    //获取桥台类型
    List<Map<String, Object>> getAbutmentTypeList();

    //获取伸缩缝类型
    List<Map<String, Object>> getExpansionJointTypeList();

    //获取桥墩页面元素信息
    List<Map<String, Object>> getListByPier();

    //获取河床页面元素信息
    List<Map<String, Object>> getListByRiverbed();

    //获取调治构造物页面元素信息
    List<Map<String, Object>> getListByRegulatingStructure();

    //获取桥面系页面元素信息
    List<Map<String, Object>> getListByDeck();

    //获取伸缩缝装置页面元素信息
    List<Map<String, Object>> getListByExpansionJoint();

    //根据上部类型结构id获取页面元素信息
    List<Map<String, Object>> getListBySuperstructure(int memberDescId);

    //根据桥台类型id获取页面元素信息
    List<Map<String, Object>> getListByAbutment(int memberDescId);

    //添加桥台信息
    int addAbutment(List siteNoList, Map<String, Object> requestMap);

    //添加桥面系信息
    int addDeck(List siteNoList, Map<String, Object> requestMap);

    //添加伸缩缝装置信息
    int addExpansionJoint(List siteNoList, Map<String, Object> requestMap);

    //根据id删除构件条目信息
    int deleteStructInfoById(@Param("id") int id);

    //根据构件管理列表的id修改每一个单独的构件信息
    int edit(Map<String, Object> requestMap);

}
